/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package DataAccessObject;

import BusinessEntity.BE_CasoEjecucion;
import Comun.Conexion;
import java.sql.CallableStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

/**
 *
 * @author kuntouch
 */
public class DA_CasoEjecucion {
    Conexion con;
    ResultSet rs;
    CallableStatement declaracion;

    private static DA_CasoEjecucion pinstancia=null;

    public static DA_CasoEjecucion obtenerInstancia()
    {
      if (pinstancia==null)
      {
          pinstancia=new DA_CasoEjecucion();
      }
      return pinstancia;
    }
    
     public ArrayList<BE_CasoEjecucion> obtenerScripts() throws InstantiationException, IllegalAccessException, SQLException{

        con = Conexion.ObtenerInstancia();
        ArrayList<BE_CasoEjecucion> aobjBE_CasoEjecuciones = new ArrayList<BE_CasoEjecucion>();      

        try {
            con.IniciarConexion();
            String strProcedure = "{call obtenerScripts() }";
            declaracion = con.preparaLlamada(strProcedure);
            declaracion.execute();
            rs = declaracion.getResultSet();   

            
            while(rs.next()){
                BE_CasoEjecucion objBE_CasoEjecucion = new BE_CasoEjecucion();
                objBE_CasoEjecucion.setIdCasoEjecucion(rs.getInt("idCaso"));
                objBE_CasoEjecucion.setStrNombre(rs.getString("nombre"));
                objBE_CasoEjecucion.setStrDescripcion(rs.getString("descripcion"));
                objBE_CasoEjecucion.setStrRuta(rs.getString("ruta"));

   
                aobjBE_CasoEjecuciones.add(objBE_CasoEjecucion);
            }

   
        } catch (SQLException exception) {
            System.out.println("error: " + exception.getMessage());
            exception.printStackTrace();
        } finally {
            
            con.CerrarConexion();
 
            
        }
        
        return aobjBE_CasoEjecuciones;
      
}
}
